// function bubbleSort(arr) {
//   let temp
//   for (let i = 0; i < arr.length; i++) {
//     for (let j = 0; j < arr.length - 1 - i; j++) {
//       if (arr[j] > arr[j + 1]) {
//         temp = arr[j];
//         arr[j] = arr[j + 1]
//         arr[j + 1] = temp
//       }
//     }
//   }
//   return arr
// }
// console.log(bubbleSort([3, 6, 2, 4, 1]));

// function bubbleSort(arr) {
//   let temp;
//   for (let i = 0; i < arr.length; i++) {
//     for (let j = 0; j < arr.length - i - 1; j++) {
//       if (arr[j] > arr[j + 1]) {
//         temp = arr[j];
//         arr[j] = arr[j + 1];
//         arr[j + 1] = temp;
//       }
//     }
//   }
//   return arr;
// }
// console.log(bubbleSort([3, 6, 2, 4, 1]));

function bubbleSort(arr) {
  if (arr.length <= 1) return arr[0];
  let left = [];
  let right = [];
  let middle = arr[Math.floor(arr.length / 2)];
  arr.forEach(item => {
    if (middle > item) {
      left.push(item);
    } else {
      right.push(item);
    }
  });
  return [bubbleSort(left), middle, bubbleSort(right)];
}
console.log(bubbleSort([3, 6, 2, 4, 1]));
